During the past years, the interest in using mobile and landline/wireline computing devices in day-to-day communications has increased. Desktop computers, workstations, and other wireline computers currently allow users to communicate, for example, via e-mail, video conferencing, and instant messaging (IM). Mobile devices, for example, mobile telephones, handheld computers, personal digital assistants (PDAs), etc. also allow the users to communicate via e-mail, video conferencing, IM, etc. Mobile telephones have conventionally served as voice communication devices, but through technological advancements they have recently proved to be effective devices for communicating data, graphics, etc. Wireless and landline technologies continue to merge into a more unified communication system, as user demand for seamless communications across different platforms increases.
To accommodate the new and different ways in which networks are being used to provide various services, new active measurement techniques are being developed and standardized to verify the service performance. Knowing how much capacity is available in real-time on a path (congested or not) across one or more IP, Ethernet or MPLS networks is valuable information to the network operators or application users. Measurements of available path capacity can be used for network characterization and application performance estimation. For instance, the available path capacity metric can be used for network monitoring, troubleshooting, server or gateway selection, admission control or simply to verify the Service Level Agreement (SLA) of a guaranteed or business class service offering across a network provider.
Active probe based sampling of network paths (or path segments) has been established as a viable methodology for making inferences on the state of the available IP-layer bandwidth capacity on such paths (and path segments). IP-layer performance metrics such as the available path capacity and tight link capacity have been defined in many standard bodies including the IETF and ITU-T. The IP-layer available path capacity (APC) is defined as the available IP-layer bandwidth capacity between a source host and destination host for a given packet type known as type-P packet corresponding to a transport protocol, port number, packet size and Diffserv codepoint (DSCP). The IP-layer tight link capacity is defined as the IP-layer capacity of the link with the smallest IP-layer available link capacity of a path between a source host and destination host for a given packet type known as type-P packet corresponding to a transport protocol, port number, packet size and Diffserv codepoint (DSCP). Note that the IP-layer available link capacity of the IP-layer tight link equals the IP-layer available path capacity. Also note that metrics similar to the IP-layer capacity are being defined for other network technologies as well.
The IETF IP Performance Metrics (IPPM) working group have defined two IP active measurement protocols: One-Way Active Measurement Protocol (OWAMP) and Two-Way Active Measurement Protocol (TWAMP). OWAMP is designed for measuring one-way packet delay and one-way packet loss between two hosts. TWAMP is based on OWAMP and is designed for measuring one-way and two-way (round-trip) packet delay and packet loss between two hosts.
The TWAMP protocols include two protocols: the TWAMP control protocol and the TWAMP test protocol. The TWAMP control protocol is used to initiate, start and stop TWAMP test sessions. The TWAMP test protocol is used to exchange TWAMP test packets between two TWAMP hosts or endpoints. Test sessions can also be configured without the TWAMP control protocol and this is known as TWAMP light.
The TWAMP measurement architecture is usually comprised of only two hosts with specific roles. This is known as the two-host implementation. One host plays the role of the control-client and session-sender and the other host plays the role of the server and the session-reflector. The host that initiates the TWAMP control TCP connection takes the roles of the control-client and session-sender. The host that acknowledges the TWAMP control TCP connection accepts the roles of the server and session-reflector. In real-life network deployment, each host may participate in several active sessions at the same time, both as control-client/session-sender and server/session-reflector.
In a TWAMP test session, packets are time stamped, tagged with sequence numbers and transmitted from a session-sender to a session-reflector. The session-reflector time stamps the incoming packets, create new test packets (one packet is created for each test packet received by the session-reflector) and send them to the session-sender as soon as possible. Using these time stamps and sequence numbers, the session-sender can then calculate the one-way delay, jitter and packet loss for the session in both the forward path and the reverse path. However, it would be desirable to provide methods, devices, systems and software which are capable of measuring other IP path parameters, such as available path capacity (APC) and tight link capacity.
Most available capacity estimation methods (e.g. BART, PathChirp, Spruce, Pathload) need to send and receive packets in groups, called packet trains or simply trains. Each train is sent at a specific transmission rate in a single, given direction. These trains must be identified within each bi-directional test session stream.
The TWAMP standard states that each packet to be reflected should be transmitted as soon as possible from the session-reflector. Introducing the capability of measuring APC using TWAMP will cause additional delay for non-APC packet reflection on the session-reflector. Accordingly, it would be desirable to provide buffer handling mechanisms in IP nodes which take into account APC measurements.